<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>v4l2src: GStreamer Good Plugins 1.0 Plugins Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GStreamer Good Plugins 1.0 Plugins Reference Manual">
<link rel="up" href="ch01.html" title="gst-plugins-good Elements">
<link rel="prev" href="gst-plugins-good-plugins-v4l2sink.html" title="v4l2sink">
<link rel="next" href="gst-plugins-good-plugins-vertigotv.html" title="vertigotv">
<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#gst-plugins-good-plugins-v4l2src.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#gst-plugins-good-plugins-v4l2src.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
                  <a href="#gst-plugins-good-plugins-v4l2src.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                  <a href="#gst-plugins-good-plugins-v4l2src.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                  <a href="#gst-plugins-good-plugins-v4l2src.signals" class="shortcut">Signals</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="gst-plugins-good-plugins-v4l2sink.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gst-plugins-good-plugins-vertigotv.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gst-plugins-good-plugins-v4l2src"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-v4l2src.top_of_page"></a>v4l2src</span></h2>
<p>v4l2src</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--device" title="The “device” property">device</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--device-name" title="The “device-name” property">device-name</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><span class="type">GstV4l2DeviceTypeFlags</span></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--flags" title="The “flags” property">flags</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--device-fd" title="The “device-fd” property">device-fd</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--brightness" title="The “brightness” property">brightness</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--contrast" title="The “contrast” property">contrast</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--hue" title="The “hue” property">hue</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--saturation" title="The “saturation” property">saturation</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">V4L2_TV_norms</span></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--norm" title="The “norm” property">norm</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">GstV4l2IOMode</span></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--io-mode" title="The “io-mode” property">io-mode</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--extra-controls" title="The “extra-controls” property">extra-controls</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--force-aspect-ratio" title="The “force-aspect-ratio” property">force-aspect-ratio</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src--pixel-aspect-ratio" title="The “pixel-aspect-ratio” property">pixel-aspect-ratio</a></td>
<td class="property_flags">Read / Write</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.signals"></a><h2>Signals</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="signals_return">
<col width="300px" class="signals_name">
<col width="200px" class="signals_flags">
</colgroup>
<tbody><tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src-prepare-format" title="The “prepare-format” signal">prepare-format</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr></tbody>
</table></div>
</div>
<a name="GstV4l2Src"></a><div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody><tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src-struct" title="struct GstV4l2Src">GstV4l2Src</a></td>
</tr></tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
    <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
        <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a>
            <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a>
                <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseSrc.html#GstBaseSrc-struct">GstBaseSrc</a>
                    <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstPushSrc.html#GstPushSrc-struct">GstPushSrc</a>
                        <span class="lineart">╰──</span> GstV4l2Src
</pre>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GstV4l2Src implements
 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstUriHandler.html#GstURIHandler-struct">GstURIHandler</a>,  GstTuner,  <a href="/usr/share/gtk-doc/html/gst-plugins-base-libs-1.0/GstColorBalance.html#GstColorBalance-struct">GstColorBalance</a> and  <a href="/usr/share/gtk-doc/html/gst-plugins-base-libs-1.0/GstVideoOrientation.html#GstVideoOrientation-struct">GstVideoOrientation</a>.</p>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.description"></a><h2>Description</h2>
<p>v4l2src can be used to capture video from v4l2 devices, like webcams and tv
cards.</p>
<div class="refsect2">
<a name="id-1.2.263.9.3"></a><h3>Example launch lines</h3>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1</pre></td>
        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> v4l2src <span class="gtkdoc opt">!</span> xvimagesink</pre></td>
      </tr>
    </tbody>
  </table>
</div>
 This pipeline shows the video captured from /dev/video0 tv card and for
webcams.
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1</pre></td>
        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> v4l2src <span class="gtkdoc opt">!</span> jpegdec <span class="gtkdoc opt">!</span> xvimagesink</pre></td>
      </tr>
    </tbody>
  </table>
</div>
 This pipeline shows the video captured from a webcam that delivers jpeg
images.
</div>
<p>Since 1.14, the use of libv4l2 has been disabled due to major bugs in the
emulation layer. To enable usage of this library, set the environment
variable GST_V4L2_USE_LIBV4L2=1.</p>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
<a name="id-1.2.263.9.5.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term">plugin</span></p></td>
<td>
            <a class="link" href="gst-plugins-good-plugins-plugin-video4linux2.html#plugin-video4linux2">video4linux2</a>
          </td>
</tr>
<tr>
<td><p><span class="term">author</span></p></td>
<td>Edgard Lima &lt;edgard.lima@gmail.com&gt;, Stefan Kost &lt;ensonic@users.sf.net&gt;</td>
</tr>
<tr>
<td><p><span class="term">class</span></p></td>
<td>Source/Video</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.263.9.5.2"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term">name</span></p></td>
<td>src</td>
</tr>
<tr>
<td><p><span class="term">direction</span></p></td>
<td>source</td>
</tr>
<tr>
<td><p><span class="term">presence</span></p></td>
<td>always</td>
</tr>
<tr>
<td><p><span class="term">details</span></p></td>
<td>image/jpeg</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/mpeg, mpegversion=(int)4, systemstream=(boolean)false</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/mpeg, mpegversion=(int){ 1, 2 }</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/mpegts, systemstream=(boolean)true</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-bayer, format=(string){ bggr, gbrg, grbg, rggb }, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-dv, systemstream=(boolean)true</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-fwht</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-h263, variant=(string)itu</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-h264, stream-format=(string){ byte-stream, avc }, alignment=(string)au</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-h265, stream-format=(string)byte-stream, alignment=(string)au</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-pwc1, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-pwc2, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-raw, format=(string){ RGB16, BGR, RGB, GRAY8, GRAY16_LE, GRAY16_BE, YVU9, YV12, YUY2, YVYU, UYVY, Y42B, Y41B, YUV9, NV12_64Z32, NV24, NV61, NV16, NV21, NV12, I420, BGRA, BGRx, ARGB, xRGB, BGR15, RGB15 }, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-sonix, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-vp8</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-vp9</td>
</tr>
<tr>
<td><p><span class="term"></span></p></td>
<td> video/x-wmv, wmvversion=(int)3, format=(string)WVC1</td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.functions_details"></a><h2>Functions</h2>
<p></p>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GstV4l2Src-struct"></a><h3>struct GstV4l2Src</h3>
<pre class="programlisting">struct GstV4l2Src;</pre>
<p>Opaque object.</p>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GstV4l2Src--device"></a><h3>The <code class="literal">“device”</code> property</h3>
<pre class="programlisting">  “device”                   <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>Device location.</p>
<p>Flags: Read / Write</p>
<p>Default value: "/dev/video0"</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--device-name"></a><h3>The <code class="literal">“device-name”</code> property</h3>
<pre class="programlisting">  “device-name”              <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>Name of the device.</p>
<p>Flags: Read</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--flags"></a><h3>The <code class="literal">“flags”</code> property</h3>
<pre class="programlisting">  “flags”                    <span class="type">GstV4l2DeviceTypeFlags</span></pre>
<p>Device type flags.</p>
<p>Flags: Read</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--device-fd"></a><h3>The <code class="literal">“device-fd”</code> property</h3>
<pre class="programlisting">  “device-fd”                <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>File descriptor of the device.</p>
<p>Flags: Read</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--brightness"></a><h3>The <code class="literal">“brightness”</code> property</h3>
<pre class="programlisting">  “brightness”               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Picture brightness, or more precisely, the black level</p>
<p>Flags: Read / Write</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--contrast"></a><h3>The <code class="literal">“contrast”</code> property</h3>
<pre class="programlisting">  “contrast”                 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Picture contrast or luma gain</p>
<p>Flags: Read / Write</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--hue"></a><h3>The <code class="literal">“hue”</code> property</h3>
<pre class="programlisting">  “hue”                      <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Hue or color balance</p>
<p>Flags: Read / Write</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--saturation"></a><h3>The <code class="literal">“saturation”</code> property</h3>
<pre class="programlisting">  “saturation”               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Picture color saturation or chroma gain</p>
<p>Flags: Read / Write</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--norm"></a><h3>The <code class="literal">“norm”</code> property</h3>
<pre class="programlisting">  “norm”                     <span class="type">V4L2_TV_norms</span></pre>
<p>TV norm</p>
<p>Flags: Read / Write</p>
<p>Default value: none</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--io-mode"></a><h3>The <code class="literal">“io-mode”</code> property</h3>
<pre class="programlisting">  “io-mode”                  <span class="type">GstV4l2IOMode</span></pre>
<p>IO Mode</p>
<p>Flags: Read / Write</p>
<p>Default value: GST_V4L2_IO_AUTO</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--extra-controls"></a><h3>The <code class="literal">“extra-controls”</code> property</h3>
<pre class="programlisting">  “extra-controls”           <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *</pre>
<p>Additional v4l2 controls for the device. The controls are identified
by the control name (lowercase with '_' for any non-alphanumeric
characters).</p>
<p>Flags: Read / Write</p>
<p class="since">Since: 1.2</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--force-aspect-ratio"></a><h3>The <code class="literal">“force-aspect-ratio”</code> property</h3>
<pre class="programlisting">  “force-aspect-ratio”       <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
<p>When enabled, the pixel aspect ratio queried from the device or set
with the pixel-aspect-ratio property will be enforced.</p>
<p>Flags: Read / Write</p>
<p>Default value: TRUE</p>
<p class="since">Since: 1.2</p>
</div>
<hr>
<div class="refsect2">
<a name="GstV4l2Src--pixel-aspect-ratio"></a><h3>The <code class="literal">“pixel-aspect-ratio”</code> property</h3>
<pre class="programlisting">  “pixel-aspect-ratio”       <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>The pixel aspect ratio of the device. This overwrites the pixel aspect
ratio queried from the device.</p>
<p>Flags: Read / Write</p>
<p>Default value: "1/1"</p>
<p class="since">Since: 1.2</p>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-v4l2src.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GstV4l2Src-prepare-format"></a><h3>The <code class="literal">“prepare-format”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-good-plugins-v4l2src.html#GstV4l2Src"><span class="type">GstV4l2Src</span></a> *v4l2src,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        fd,
               <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html#GstCaps-struct"><span class="type">GstCaps</span></a>    *caps,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal gets emitted before calling the v4l2 VIDIOC_S_FMT ioctl
(set format). This allows for any custom configuration of the device to
happen prior to the format being set.
This is mostly useful for UVC H264 encoding cameras which need the H264
Probe &amp; Commit to happen prior to the normal Probe &amp; Commit.</p>
<div class="refsect3">
<a name="GstV4l2Src-prepare-format.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>v4l2src</p></td>
<td class="parameter_description"><p>the v4l2src instance</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>fd</p></td>
<td class="parameter_description"><p>the file descriptor of the current device</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>caps</p></td>
<td class="parameter_description"><p>the caps of the format being set</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.28</div>
</body>
</html>